/*
 * ViewManager.h
 *
 *  Created on: Nov 7, 2013
 *      Author: ruben
 */

#ifndef VIEWMANAGER_H_
#define VIEWMANAGER_H_
#include <iostream>
#include <stdio.h>
#include "../manager/EntityManager.h"

using namespace std;
class ViewManager {
private:
	EntityManager *entityManager;
	int loginView();
	int loginToUpdate(int *identifier);
	void menuUserView(int userType);
	void pressAnyKeyToContinue();
	int createUserView();
	int modifyUserView(int dni);
	int deleteUserView(int identifier);
	int makeConsulting(int userIdentifier);
	//provider
	int enlistAsProvider(int identifier);
	int createServiceView(int providerIdentifier);
	int deleteServiceView();
	int loginProviderView(int *identifier);
	int answerConsultations();
	//admin
	int loginView(int type, int *identifier);
	int resgisterUserToAdministratorView(int identifier);
	int deleteAdministratorView(int identifier);
	int createCategoryView(int adminIdentifier);
	int newCategoryView(int admin);
	int newCategoryByFileView(int admin);
	int modifyCategoryView();
	int deleteCategoryView();
	int moderateConsultationsView();
	int recoverPasswordView();

public:
	ViewManager();
	virtual ~ViewManager();

	int initView();
	//getter
	EntityManager *getEntityManager(){return entityManager;};
	void setEntityManager(EntityManager *pEntityManager){entityManager = pEntityManager;};


};

#endif /* VIEWMANAGER_H_ */
